//
// Created by LiuYou on 2021/5/9.
//

#include <cstdio>
#include <cstdlib>
#include <ctime>

/**
 * @brief 100百天后是几号。
 * @param argc
 * @param argv
 * @return
 */
int main(int argc, char** argv) {
    // 因为这些小程序的功能都比较简单, 每一句其实都有可能出错, 其实都应该写上if error了怎么办?
    time_t timeStamp = time(nullptr);
    struct tm* pTm = localtime(&timeStamp);
    const int BUF_SIZE = 1024;
    char buf[BUF_SIZE]{};
    strftime(buf, BUF_SIZE, "Now: %Y-%m-%d", pTm);
    std::puts(buf);

    pTm->tm_mday += 100;
    // TODO 疑问: 这里加(void) 不使用这个函数的主作用, 而是使用它的副作用。
    (void) mktime(pTm);
    strftime(buf, BUF_SIZE, "100 days later: %Y-%m-%d", pTm);
    std::puts(buf);


    return 0;
}